package perform.constants;

public enum Types {
	
	/* Not specified, chooses data type based on field type */
	NOT_SPECIFIED,
	
	/* Integer data types */
	TINYINT,		/*	-128 to 127,									default 4 */
	SMALLINT,		/*	-32768 to 32767,								default 6 */
	MEDIUMINT,		/*	-8388608 to 8388607,							default 9 */
	INT,			/*	-2147483648 to 2147483647,						default 11 */
	BIGINT,			/*	-9223372036854775808 to 9223372036854775807,	default 20 */
	
	/* Floating-point data types */
	FLOAT,			/* not specified */
	REAL,			/* not specified */
	DOUBLE,			/* not specified */
	
	/* Fixed-point data types */
	DECIMAL,		/* to 65 digits			default 10,0 */
	NUMERIC,		/* to 65 digits			default 10,0,	created as DECIMAL */
	
	/* Bit-values data types */
	BIT,			/* 1 to 64				default 1 */
	
	/* Boolean data type */
	BOOL,			/* tinyint(1) */
	
	/* String data types */
	CHAR,			/* 0 to 255				no default */
	VARCHAR,		/* 0 to 65535			no default */
	BINARY,			/* 0 to 255				no default */
	VARBINARY,		/* 0 to 65535			no default */
	TINYTEXT,		/* not specified */
	MEDIUMTEXT,		/* not specified */
	TEXT,			/* not specified */
	LONGTEXT,		/* not specified */
	TINYBLOB,		/* not specified,		to 256 B */
	MEDIUMBLOB,		/* not specified,		to 8.192 KB */
	BLOB,			/* not specified,		to 64 KB */
	LONGBLOB,		/* not specified,		to KB */
	ENUM,			/* not specified */

	/* Date and time data types */
	DATE,			/* not specified 	YYYY-MM-DD */
	DATETIME,		/* not specified	YYYY-MM-DD HH:MM:SS */
	TIME,			/* not specified	HH:MM:SS */
	TIMESTAMP,		/* not specified 	YYYY-MM-DD HH:MM:SS */
	YEAR			/* not specified 	YYYY*/
	

}
